import os
from collections import namedtuple
from pathlib import Path
import torch

ROOT = 'D:\workspace\git\my-research\deep_learning\BB_Complex_Module_Constraint_v2-enjun'
DATA_PATH = os.path.join(ROOT, 'train_mygnn', 'data')
MODEL_PATH = os.path.join(ROOT, 'train_mygnn', 'model')
RESULT_PATH = os.path.join(ROOT, 'train_mygnn', 'result')

# DEBUG = True
DEBUG = False

# DEVICE = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
# DEVICE = 'cuda' if torch.cuda.is_available() else 'cpu'

NUM_TRAIN_EXAMPLES = 80
NUM_TEST_EXAMPLES = 20

NUM_VARIABLE_FEATURES = 2  # number of variable features
NUM_CONSTRAINT_FEATURES = 2  # number of constrain features
# NUM_METRIC_NODE = 1
NUM_METRIC_FEATURES = 6

HIDDEN_CHANNEL = 48
NUM_LAYER = 1
TrainParameters = namedtuple('TrainParameters', ['N', 'M','batch_size','train_epochs'])


def creat_folders():
    Path(DATA_PATH).mkdir(exist_ok=True,parents=True)
    Path(MODEL_PATH).mkdir(exist_ok=True)
    Path(RESULT_PATH).mkdir(exist_ok=True)


# run this code before other codes
if __name__ == '__main__':
    creat_folders()
